package com.xiaoke.controller;

import com.xiaoke.domain.R;
import com.xiaoke.domain.dtos.Demo1Dto;
import com.xiaoke.domain.dtos.Demo2Dto;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Author xiaoke
 * @Description 参数验证测试控制器
 * @Date 2023/7/24 0:04
 */
@RestController
@RequestMapping("/api")
public class DemoController {


    @PostMapping("/demo1")
    public R<String> demo1(@RequestBody Demo1Dto dto){
        if(dto.getUsername()==null||"".equals(dto.getUsername())) {
            return  R.error("用户名不能为空");
        }
        if(dto.getUsername().length() < 4 ) {
            return R.error("用户名小于4位");
        } else if (dto.getUsername().length() > 12) {
            return R.error("用户名大于12位");
        }
        if(dto.getPassword()==null||"".equals(dto.getPassword())) {
            return R.error("密码不能为空");
        }
        if(dto.getAge() ==null) {
            return R.error("年龄不能为空");
        }
        return R.ok("访问成功");
    }

    @PostMapping("/demo2")
    public R<String> demo2(@RequestBody @Validated Demo2Dto dto){
        return R.ok("访问成功");
    }

}
